/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package MetodosSabre;

import ClasesGenerales.*;
import DAO.ClienteDO;
import Procesos.GenerarTKT;
import Procesos.LectorDatos;
import Procesos.ProcesarPNR;
import Procesos.TarifarPNR;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;

/**
 *
 * @author USER
 */
@WebService
public class Sabre {

    @WebMethod(operationName = "RecuperarPNR")
    public PNR RecuperarPNR(@WebParam(name = "CodigoPNR") String CodigoPNR) {

        PNR oPNR = new PNR();
        ProcesarPNR oProcesarPNR = null;

        try {

            oProcesarPNR = new ProcesarPNR();
            oPNR = oProcesarPNR.ProcesarArchivoReserva(2, CodigoPNR);

        } catch (Exception e) {
            oPNR.setError(e.toString());
        } finally {
            oProcesarPNR = null;
            return oPNR;
        }



    }

    @WebMethod(operationName = "CostearPNR")
    public Tarifa CostearPNR(@WebParam(name = "TipoPAX") String TipoPax,
            @WebParam(name = "ClaseReserva") String ClaseReserva,
            @WebParam(name = "Orientacion") String Orientacion) {

        Tarifa oTarifa = new Tarifa();
        TarifarPNR oTarifarPNR = null;

        try {

            oTarifarPNR = new TarifarPNR();
            oTarifa = oTarifarPNR.Tarifar(TipoPax, ClaseReserva, Orientacion);

        } catch (Exception e) {
            oTarifa.setError(e.toString());
        } finally {
            oTarifarPNR = null;
            TipoPax = null;
            ClaseReserva = null;
            Orientacion = null;

            return oTarifa;
        }



    }

    @WebMethod(operationName = "EmitirPNR")
    public BoletosEmitidos EmitirPNR(@WebParam(name = "NumeroPax") String oNumeroPax) {

        BoletosEmitidos oBoletosEmitidos = new BoletosEmitidos();
        GenerarTKT oGenerarTKT = null;


        try {

            oGenerarTKT = new GenerarTKT();
           oBoletosEmitidos.setTktEmitidos(oGenerarTKT.GenerarNumeroTicket(oNumeroPax));


        } catch (Exception e) {
            oBoletosEmitidos.setError(e.toString());
        } finally {
            oGenerarTKT = null;
            return oBoletosEmitidos;
        }

    }
}
